package cn.zwk;

import org.junit.jupiter.api.Test;
import com.alibaba.fastjson.JSON;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.Version;

import java.io.StringReader;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.Map;


public class TTT {
    public static void main(String[] args) throws Exception {
        // 1. 初始化 FreeMarker 配置
        Configuration cfg = new Configuration(Configuration.VERSION_2_3_31);
        cfg.setDefaultEncoding("UTF-8");

        // 2. 定义模板内容（存储在字符串中）
        String templateStr = """
                ${res.status}
                """;
        // 3. 创建模板对象（不从文件读取）
        Template template = new Template("inlineTemplate", new StringReader(templateStr), cfg);

        // 2. 你的 JSON 数据
        String json = """
                {
                    "status": "success",
                    "data": {
                        "result": [
                            {
                                "metric": {"__name__": "up"},
                                "values": [[1762067404.999, "1"]]
                            }
                        ]
                    },
                    "stats": {"seriesFetched": "2"}
                }
                """;

        // 3. 转成 Map
        Map<String, Object> res = JSON.parseObject(json, Map.class);

        // 4. 创建模型数据
        Map<String, Object> model = new HashMap<>();
        model.put("res", res);

        // 5. 加载模板

        // 6. 渲染模板
        StringWriter out = new StringWriter();
        template.process(model, out);

        // 7. 输出结果
        System.out.println("模板输出结果: " + out.toString().trim());
    }
}
